package reflection.test;

import reflection.domain.Student;

import java.lang.reflect.Method;
import java.util.ArrayList;

public class 利用反射向集合中添加元素 {
    public static void main(String[] args) throws Exception{
        ArrayList<String> list = new ArrayList<>();
        list.add("shibixiu");


        // 向集合中直接添加int类型的数据会报错 利用反射进行添加
        // 原理是 泛型只在编译时有用  利用反射是在程序运行时进行添加
        Class clazz = list.getClass();
        Method method = clazz.getDeclaredMethod("add", Object.class);
        method.setAccessible(true);
        method.invoke(list,24);

        System.out.println(list);

    }
}
